<template>
   <div class="School">
    <p>{{ ming }}</p>
    <button @click="test1()">点击{{ ming }}给下方传参</button>
      <p>接收的姓名：{{ lpl.name }}</p>
      <p>接收的年龄：{{ lpl.age }}</p>
      <h5>接受到的父组件参数：{{ schoolName }}</h5>
      <h5>接受到的父组件参数：{{ schoolData.established }}</h5>
      <button @click="sendToParent()">点击发送数据给App</button>

    
     
   </div>
</template>
<script>
// 引入新的vue实例对象

import BaseDao from "../utils/BaseDao";
export default {
   name: 'School',
  
    
   components: {
    BaseDao
     
   },
   mixins: [],
   props: {
    // 声明接收的参数
    schoolName: {
      type: String,
      default: '默认学校名称'
    },
    schoolData: {
      type: Object,
      default: () => ({})}
    
     
   },
   data() {
     return {
        ming:'我是学校组件',
        dat:{
            name:'阿萨德',
            age:'26',
            
        },
        lpl:{},
        // 用于给App发送数据
        faschoolData: {
            name: '北京大学',
            location: '北京'
      }
       
     }
   },
   computed: {
     
   },
   watch: {
     
   },
   mounted() {
     
   },
   methods: {
    sendToParent() {
        console.log(this.faschoolData);
        
        this.$emit('school-info', this.faschoolData)
    },
    test1(){
        console.log(this.ming);
        // 左侧为给另一个组件传递的参数 ，右侧为当前实例对象
        BaseDao.$emit('data',this.dat)
        
    }
     
   },
      // 用于接受参数
   beforeCreate(){
            BaseDao.$on('lol',(data)=>{
               this.lpl=data  // 会自动更新到模板


            })
   },
   // ...销毁时记得移除监听...
   beforeDestroy() {
    BaseDao.$off('lol')
  }

};
</script>
<style  scoped>
.School{
    background-color: aquamarine;
    width: 300px;
    height: 300px;


}
</style>